package com.itheima.health.dao;

import com.github.pagehelper.Page;
import com.itheima.health.pojo.CheckGroup;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface CheckGroupDao {
    /**
     * 插入
     * @param checkGroup
     */
    void insert(CheckGroup checkGroup);

    /**
     * 插入检查项与检查组的关系表
     * @param checkgroupId
     * @param checkitemId
     */
    void insert_che(@Param("checkgroup_id") Integer checkgroupId,@Param("checkitem_id") Integer checkitemId );


    /**
     * 分页操作
     * @queryString 模糊查询的形参
     */
    Page<CheckGroup> selectByConditon(@Param("queryString") String queryString);


    /**
     * 根据Id查询
     * @param id
     * @return
     */
    CheckGroup findById(@Param("id") Integer id);

    /**
     *  修改时回显检查项与检查组的关系
     * @param id
     * @return
     */
    List<Integer> findCheckItemIdsByCheckGroupId(@Param("checkgroup_id") Integer id);

    /**
     * 修改时先根据id删除所有检查项
     * @param id
     */
     void deleteById(@Param("checkgroup_id")Integer id);

    /**
     * 更新
     * @param checkGroup
     */
    void  update(CheckGroup checkGroup);

    /**
     * 删除时根据id在套餐与检查组关系表去查询
     * @param checkgroup_id
     * @return
     */
    List<Integer> selectById(@Param("checkgroup_id")Integer checkgroup_id);

    /**
     * 根据id删除检查组
     * @param id
     */
    void deleteCheckgroup(@Param("id")Integer id);

    /**
     * 套餐添加时显示检查组
     * @return
     */
   List<CheckGroup> selectAll();


}
